package com.usermanage.controller;

import com.usermanage.beanParam.CoopBean;
import com.usermanage.util.JsonData;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.*;

import javax.validation.Valid;

/**
 *组织合作模块接口
 * searchCooperate   根据组id查询组下的合作对象
 * addCooperate   根据组id添加合作对象
 * searchCooperateDetail  根据合作对象id查询合作细节
 * addCooperateDetail  根据合作对象id添加合作细节
 */
@Api(description = "合作对象接口")
@RestController
@RequestMapping("/coop")
public class CoopController {

    /**
     * 根据组id查询组下的合作对象列表
     * @param groupId
     * @return
     * @throws Exception
     */
    @ApiOperation(value = "根据组查询组下合作对象" ,  notes="根据组查询组下合作对象")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "groupId", value = "组id", required = true,  paramType = "query", dataType = "String")
    })
    @RequestMapping(value="/searchCoop",method= RequestMethod.GET)
    public JsonData searchCoopList(@RequestParam("groupId") String groupId)throws Exception{
        //查询合作对象列表，返回列表集合
//        List list = cooperateService.searchCooperate(groupId);
        return JsonData.success();
    }
    /**
     * 根据组id添加合作对象
     * @param bean 合作对象
     * @param bindingResult
     * @return
     */
    @ApiOperation(value = "添加合作对象" ,  notes="添加合作对象")
    @RequestMapping(value="/creatCoop",method= RequestMethod.POST)
    public JsonData creatCoop(@Valid @RequestBody CoopBean bean, BindingResult bindingResult){
        //1、验证合作对象是否合法
        if(bindingResult.hasErrors()){
            return JsonData.fail(bindingResult.getFieldError().getDefaultMessage());
        }
        //2、根据合作对象名验证该合作对象是否已经存在。
//        Boolean bool = cooperateService.isExistCooperate(cooperateParam.getCoop_name());
//        if (bool){
//            JsonData.fail("数据已存在");
//        }
//        //3、添加合作对象
//        int result = cooperateService.creatCooperate(cooperateParam);
//        if (result == 0){
//            JsonData.fail("合作对象创建失败，系统异常");
//        }
        return JsonData.success();
    }

    /**
     * 根据合作对象id查询合作细节
     * @param coopId 合作对象id
     * @return
     * @throws Exception
     */
    @ApiOperation(value = "根据合作对象id查询合作细节" ,  notes="根据合作对象id查询合作细节")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "coopId", value = "合作对象id", required = true,  paramType = "query", dataType = "String")
    })
    @RequestMapping(value="/searchCoopDetail",method= RequestMethod.GET)
    public JsonData searchCoopDetail(@RequestParam("coopId") String coopId)throws Exception{
//        List list = cooperateService.searchCooperateDetail(coopId);
        return JsonData.success();
    }







}
